Sencha Touch এবং Components এর Overview
Sencha Touch একটি শক্তিশালী HTML5 ফ্রেমওয়ার্ক যা মোবাইল ওয়েব অ্যাপ্লিকেশন তৈরি করার জন্য ব্যবহৃত হয়। এটি মোবাইল ডিভাইসগুলোর জন্য ইন্টারঅ্যাকটিভ ইউজার ইন্টারফেস (UI) ডিজাইন করতে বিশেষভাবে উপযোগী। Sencha Touch-এর মধ্যে বিভিন্ন ধরনের UI Components রয়েছে, যেগুলি মোবাইল অ্যাপ্লিকেশনের মধ্যে ব্যবহৃত হয়। এই কম্পোনেন্টগুলির মধ্যে যেমন buttons, panels, forms, grids ইত্যাদি অন্তর্ভুক্ত।
Components সাধারণত অ্যাপ্লিকেশনের ইন্টারফেসের বিভিন্ন অংশ তৈরি করে এবং এগুলির স্টাইলিং এবং কাস্টমাইজেশন খুবই গুরুত্বপূর্ণ। Sencha Touch এর কম্পোনেন্টগুলোর কাস্টমাইজেশন এবং স্টাইলিং করার জন্য বিশেষ কিছু টুল এবং কৌশল রয়েছে।
Sencha Touch Components এর Customization এবং Styling
Sencha Touch-এ কম্পোনেন্টগুলি কাস্টমাইজ করার এবং স্টাইলিং করার জন্য কিছু শক্তিশালী পদ্ধতি রয়েছে। এর মধ্যে সবচেয়ে গুরুত্বপূর্ণ হল CSS এবং Sencha Touch-এর config অপশন।
১. Components এর কাস্টম স্টাইলিং CSS ব্যবহার করে
Sencha Touch-এ কম্পোনেন্টগুলোতে স্টাইলিং করার জন্য CSS ব্যবহার করা হয়। এটি খুবই গুরুত্বপূর্ণ কারণ আপনি নিজের প্রয়োজন অনুযায়ী অ্যাপ্লিকেশনের কম্পোনেন্টগুলোর রঙ, মাপ, ফন্ট ইত্যাদি কাস্টমাইজ করতে পারবেন।
উদাহরণ: ধরা যাক, একটি Button কম্পোনেন্ট তৈরি করা হয়েছে এবং এর ব্যাকগ্রাউন্ড রং এবং ফন্ট সাইজ কাস্টমাইজ করা হবে।
/* Custom CSS for Sencha Touch button */
.custom-button {
background-color: #ff5722;
color: white;
font-size: 16px;
padding: 10px 20px;
border-radius: 5px;
}
এখন, এই CSS ক্লাসটি Sencha Touch এর Button কম্পোনেন্টে প্রয়োগ করা যেতে পারে:
Ext.create('Ext.Button', {
text: 'Custom Button',
ui: 'action',
cls: 'custom-button', // Applying the custom CSS class
handler: function() {
alert('Button clicked');
}
});
এখানে, cls প্রপার্টি ব্যবহার করে আমরা কাস্টম CSS ক্লাসটি অ্যাপ্লাই করেছি এবং এটি আমাদের Button এর রঙ, ফন্ট এবং আউটলাইন পরিবর্তন করেছে।
২. Component Configurations (config) এর মাধ্যমে কাস্টমাইজেশন
Sencha Touch এর কম্পোনেন্টগুলির জন্য অনেক config অপশন রয়েছে যেগুলি দিয়ে আপনি কম্পোনেন্টের বৈশিষ্ট্য কাস্টমাইজ করতে পারেন। এগুলির মধ্যে text, icon, padding, layout ইত্যাদি অন্তর্ভুক্ত থাকে।
উদাহরণ:
Ext.create('Ext.Panel', {
title: 'Custom Panel',
height: 200,
width: 300,
padding: 20,
style: {
backgroundColor: '#f5f5f5'
},
html: '<h2>Customizable Panel</h2>',
items: [{
xtype: 'button',
text: 'Click Me',
style: {
backgroundColor: '#007bff',
color: '#fff',
borderRadius: '5px'
},
handler: function() {
alert('Button clicked');
}
}]
});
এখানে, config অপশন ব্যবহার করে আমরা প্যানেলের আকার, প্যাডিং, এবং ব্যাকগ্রাউন্ড রং কাস্টমাইজ করেছি। পাশাপাশি, Button কম্পোনেন্টের স্টাইলও কাস্টমাইজ করা হয়েছে।
৩. Themes ব্যবহার করে Sencha Touch Components এর Styling
Sencha Touch এ Themes ব্যবহার করে অ্যাপ্লিকেশনের সমস্ত কম্পোনেন্টের জন্য একটি সামগ্রিক লুক অ্যান্ড ফিল কাস্টমাইজ করা যেতে পারে। Sencha Touch এর মধ্যে কিছু বিল্ট-ইন থিম রয়েছে এবং আপনি চাইলে Custom Themes তৈরি করতে পারেন।
Custom Theme তৈরি করার জন্য নিম্নলিখিত পদ্ধতি অনুসরণ করুন:
Sencha Cmd ব্যবহার করে Custom Theme তৈরি করা: Sencha Cmd ব্যবহার করে আপনি সহজেই একটি কাস্টম থিম তৈরি করতে পারেন।
sencha generate theme MyCustomThemeTheme এর মধ্যে কাস্টমাইজেশন: আপনি থিমের মধ্যে থাকা CSS এবং SASS ফাইলগুলিতে প্রয়োজনীয় পরিবর্তন করতে পারেন, যেমন:
- রঙ,
- ফন্ট,
- padding/margin,
- বর্ডার
// MyCustomTheme.scss $base-font-family: 'Arial', sans-serif; $button-background-color: #ff5722;Custom Theme অ্যাপ্লাই করা: একবার থিম তৈরি হলে, আপনি এটিকে আপনার অ্যাপ্লিকেশন ফাইলে অ্যাপ্লাই করতে পারেন।
Ext.application({ name: 'MyApp', theme: 'MyCustomTheme', launch: function () { Ext.create('Ext.Button', { text: 'Custom Themed Button', handler: function () { alert('Button clicked'); } }); } });
এখানে, আমরা একটি কাস্টম থিম তৈরি করেছি এবং এটি অ্যাপ্লিকেশনে প্রয়োগ করেছি।
৪. Component Inside Layouts
Sencha Touch-এর Layouts ব্যবহার করে আপনি কম্পোনেন্টগুলোর মধ্যে সুনির্দিষ্ট অবস্থান বা বিন্যাস (layout) নির্ধারণ করতে পারেন। এটি কম্পোনেন্টের আকার এবং অবস্থান কাস্টমাইজ করতে সহায়তা করে।
উদাহরণ:
Ext.create('Ext.Panel', {
title: 'My Panel with Layout',
layout: 'hbox', // Horizontal layout for arranging components
items: [{
xtype: 'button',
text: 'Left Button',
flex: 1 // This button will take up available space
},{
xtype: 'button',
text: 'Right Button',
flex: 1 // This button will take up remaining space
}]
});
এখানে, আমরা একটি hbox লেআউট ব্যবহার করে দুটি Button কম্পোনেন্টের মধ্যে স্থান ভাগ করে নিয়েছি।
সারাংশ
Sencha Touch এর Components এর কাস্টমাইজেশন এবং স্টাইলিং করার জন্য CSS, config অপশন, Themes, এবং Layouts ব্যবহার করা যেতে পারে। CSS ব্যবহার করে আপনি কম্পোনেন্টের দেখতে চাইলে পরিবর্তন করতে পারেন, যখন config অপশন দ্বারা বিভিন্ন ডাইনামিক বৈশিষ্ট্য কাস্টমাইজ করা যায়। Themes এবং Layouts ব্যবহার করে অ্যাপ্লিকেশনের সামগ্রিক লুক এবং অনুভূতি আরও কাস্টমাইজ করা সম্ভব। এইসব কৌশল ব্যবহার করে আপনি অত্যন্ত রেসপনসিভ এবং ইউজার-বান্ধব মোবাইল অ্যাপ্লিকেশন তৈরি করতে পারবেন।
Read more